package com.ybkj.daijia.server.sp;

import java.io.Serializable;
import java.util.Date;

/**
 * BJ 统计运营信息 spmodel 车辆经营上线接口 spmodel 车辆经营下线接口
 *
 * @author Sakura
 */
public class TjyyMessage implements Serializable {

    private static final long serialVersionUID = 3393016960438176057L;

    /**
     * 无用字段
     */
    private String type = Type.MOREQ_TJYY;

    private boolean loginFlag;//上线为true，下线为false

    private String appKey;

    /**
     * BJ 统计运营信息（MOREQ_TJYY）
     */
    private String driverName;// 司机姓名

    private String driverIdCode;// 网约车驾驶员证号（即身份证号）

    private String vehicleType;// 车型,如经济型、舒适型、豪华型

    private String vehicleLicense;// 车牌号码,去除“京”，字母大写

    private Date onlineTime;// 上线时间,yyyy-MM-dd HH:mm:ss

    private Date offlineTime;// 下线时间,yyyy-MM-dd HH:mm:ss

    private Integer operateSum;// 总载客次数,整数型

    private Double passengerMilSum;// 总载客里程,Double，公里，精确至小数点后2位

    private Double noneMilSum;// 总空驶里程,Double，公里，精确至小数点后2位

    private Double passengerTimeSum;// 总载客时间,Double，分钟，精确至小数点后2位

    private Double paidSum;// 总实收金额,应收-优惠金额,Double，元，无填0，精确至小数点后2位

    private Double receivableSum;// 总应收金额,支付金额+优惠金额（支付金额=现金支付金额+电子支付金额+POS机支付金额）,Double，元，无填0，精确至小数点后2位

    private Double driverTotalIncome;// 司机实收总金额,司机在本次统计范围内的实收总金额,Double，元精确至小数点后2位

    private Double driverTotalReceivable;// 司机应收总金额,司机在本次统计范围内的应收总金额,Double，元精确至小数点后2位

    private Double waitMilSum;// 总待客里程,司机在本次统计范围内的待客总里程,Double，公里，精确至小数点后2位

    /**
     * spmodel 车辆经营上线接口
     */
    //private String licenseId;//机动车驾驶证号（与driverIdCode重复）

    //private String vehicleNo;//车辆号牌（与vehicleLicense重复）

    //private Long loginTime;//车辆经营上线时间YYYYMMDDhhmmss（与onlineTime重复）

    private Double longitude;//上线经度

    private Double latitude;//上线纬度

    private Integer encrypt;//坐标加密标识,固定取值

    /**
     * spmodel 车辆经营下线接口
     */
    //private String licenseId;//机动车驾驶证号（与driverIdCode重复）

    //private String vehicleNo;//车辆号牌（与重复）

    //private Long logoutTime;//车辆经营下线时间YYYYMMDDhhmmss（与offlineTime重复）

    //private Long longitude;//下线经度（重复）

    //private Long latitude;//下线纬度（重复）

    //private Integer encrypt;//坐标加密标识，固定取值（重复）

    /**
     * szmodel 车辆经营上线（JYSX）
     */
    private String driCertNo;//网约车驾驶员证证号

    private String vehCertNo;//网约车车辆运输证号

    //private String driverName;//驾驶员姓名（重复）

    private String idCode;//身份证号

    //private String vehicleNo;//车牌号（与vehicleLicense重复）

    //private String loginTime;//经营上线时间（与onlineTime重复）

    private SjwzMessage sjwzMessage;//经营上线车辆位置信息

    /**
     * szmodel 车辆经营下线（JYXX）
     */
    //private String driCertNo;//网约车驾驶员证证号（重复）

    //private String vehCertNo;//网约车车辆运输证号（重复）

    //private String driverName;//驾驶员姓名（重复）

    //private String idCode;//身份证号（重复）

    //private String vehicleNo;//车牌号（与vehicleLicense重复）

    //private String logoutTime;//经营上线时间（与offlineTime重复）

    //private Jsydw gps;//经营上线车辆位置信息（重复）
    public TjyyMessage() {
        super();

    }

    public String getAppKey() {
        return appKey;
    }

    public void setAppKey(String appKey) {
        this.appKey = appKey;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public String getDriverName() {
        return driverName;
    }

    public void setDriverName(String driverName) {
        this.driverName = driverName;
    }

    public String getDriverIdCode() {
        return driverIdCode;
    }

    public void setDriverIdCode(String driverIdCode) {
        this.driverIdCode = driverIdCode;
    }

    public String getVehicleType() {
        return vehicleType;
    }

    public void setVehicleType(String vehicleType) {
        this.vehicleType = vehicleType;
    }

    public String getVehicleLicense() {
        return vehicleLicense;
    }

    public void setVehicleLicense(String vehicleLicense) {
        this.vehicleLicense = vehicleLicense;
    }

    public Date getOnlineTime() {
        return onlineTime;
    }

    public void setOnlineTime(Date onlineTime) {
        this.onlineTime = onlineTime;
    }

    public Date getOfflineTime() {
        return offlineTime;
    }

    public void setOfflineTime(Date offlineTime) {
        this.offlineTime = offlineTime;
    }

    public Integer getOperateSum() {
        return operateSum;
    }

    public void setOperateSum(Integer operateSum) {
        this.operateSum = operateSum;
    }

    public Double getPassengerMilSum() {
        return passengerMilSum;
    }

    public void setPassengerMilSum(Double passengerMilSum) {
        this.passengerMilSum = passengerMilSum;
    }

    public Double getNoneMilSum() {
        return noneMilSum;
    }

    public void setNoneMilSum(Double noneMilSum) {
        this.noneMilSum = noneMilSum;
    }

    public Double getPassengerTimeSum() {
        return passengerTimeSum;
    }

    public void setPassengerTimeSum(Double passengerTimeSum) {
        this.passengerTimeSum = passengerTimeSum;
    }

    public Double getPaidSum() {
        return paidSum;
    }

    public void setPaidSum(Double paidSum) {
        this.paidSum = paidSum;
    }

    public Double getReceivableSum() {
        return receivableSum;
    }

    public void setReceivableSum(Double receivableSum) {
        this.receivableSum = receivableSum;
    }

    public Double getDriverTotalIncome() {
        return driverTotalIncome;
    }

    public void setDriverTotalIncome(Double driverTotalIncome) {
        this.driverTotalIncome = driverTotalIncome;
    }

    public Double getDriverTotalReceivable() {
        return driverTotalReceivable;
    }

    public void setDriverTotalReceivable(Double driverTotalReceivable) {
        this.driverTotalReceivable = driverTotalReceivable;
    }

    public Double getWaitMilSum() {
        return waitMilSum;
    }

    public void setWaitMilSum(Double waitMilSum) {
        this.waitMilSum = waitMilSum;
    }

    public Double getLongitude() {
        return longitude;
    }

    public void setLongitude(Double longitude) {
        this.longitude = longitude;
    }

    public Double getLatitude() {
        return latitude;
    }

    public void setLatitude(Double latitude) {
        this.latitude = latitude;
    }

    public Integer getEncrypt() {
        return encrypt;
    }

    public void setEncrypt(Integer encrypt) {
        this.encrypt = encrypt;
    }

    public boolean isLoginFlag() {
        return loginFlag;
    }

    public void setLoginFlag(boolean loginFlag) {
        this.loginFlag = loginFlag;
    }

    public String getDriCertNo() {
        return driCertNo;
    }

    public void setDriCertNo(String driCertNo) {
        this.driCertNo = driCertNo;
    }

    public String getVehCertNo() {
        return vehCertNo;
    }

    public void setVehCertNo(String vehCertNo) {
        this.vehCertNo = vehCertNo;
    }

    public String getIdCode() {
        return idCode;
    }

    public void setIdCode(String idCode) {
        this.idCode = idCode;
    }

    public SjwzMessage getSjwzMessage() {
        return sjwzMessage;
    }

    public void setSjwzMessage(SjwzMessage sjwzMessage) {
        this.sjwzMessage = sjwzMessage;
    }
}
